Skip to content

Feature: GPIO remapping for alternative OVMS modules #1167

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

zbchristian
Copy link
Contributor

Implement an optional utilization of the OVMS firmware with other hardware modules. These modules have to be based on the same or a subset of components, but require a modification wrt the ESP32 GPIO assignment.
This is achieved by the option, to load the actual GPIO assignment from an external file in ovms_peripherals.h.

There is no restriction on the location of the GPIO mapping file(s), but to simplify the detection of the entered file, a new folder
components/gpio_maps has been included. This folder is added to the include path via component.mk during the build process. In addition the folder contains the documentation of the required GPIO names and functions.

This PR includes corresponding GPIO mapping files for different versions of the Lilygo T-Call A7670E in the folder components/gpio_maps and an example sdkconfig in the support folder.

@dexterbg, there are different options, how to incorporate different hardware modules into the OVMS firmware.

  • This PR adds everything to the firmware repo
  • Another option would be to just add the option to load an external GPIO mapping into this repo. This would effect only Kconfig and ovms_peripherals.*. The actual instructions, mapping and sdkconfig files could be published in a separate repo. This would separate the firmware from the specifics for a certain hardware.

I am pretty ambivalent about this and could really understand, if you would prefer the second option.

I just realized, that support/partion4M.csv is changed by this PR as well.
The version in the master branch has the problem, that the size of the factory partition is too small to flash the current edge version. In addition is the total size too small by 448kB.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant